var q = {
    pagenum: 1,//默认显示第1页
    pagesize: 2,//数据有点少 
    cate_id: '',//文章分类
    state: ''//状态 已发布 草稿
}
$(function () {
    initTable()
    initCate()

    //筛选功能
    $('#form-search').submit(function (e) {
        e.preventDefault();
        var id = $('[name=cate_id]').val();
        var state = $('[name=state]').val();
        q.cate_id = id;
        q.state = state;
        initTable()
    })

    //删除功能
    $('tbody').on('click','.btn-del',function(){
        var id = $(this).attr('data-id');
        layer.confirm('确认要删除吗?', {icon: 3, title:'提示'}, function(index){
            $.ajax({
                method:'get',
                url:'/my/article/delete/'+id,
                success:function(res){
                    if(res.status != 0){
                        return layer.msg('删除失败')
                    }
                    //当只剩下一条的时候再删除当前页就没有数据,所以切换到上一级 q.pagenum - 1
                    // 但是如果当前是第一页,就没办法切换上一页,因为没有第0页
                    if($('tbody tr').length == 1 && q.pagenum!=1){
                        q.pagenum = q.pagenum - 1;
                    }
                    initTable()
                    layer.close(index);
                }
            })
          });
    })
})


function initTable() {
    $.ajax({
        method: 'get',
        url: '/my/article/list',
        data: q,
        success: function (res) {
            if (res.status != 0) {
                return layer.msg('获取数据失败')
            }
            var str = template('art-tpl', res)
            $('tbody').html(str)
            renderPage(res.total)
        }
    })
}


function renderPage(total){
    //执行一个laypage实例
    layui.laypage.render({
        elem: 'test1' //注意，这里的 test1 是 ID，不用加 # 号
        , count: total, //数据总数，从服务端得到
        limit:q.pagesize,//每页显示的条数
        layout:['count','limit','prev','page','next','skip'],//布局效果
        curr:q.pagenum,//当前页
        limits:[2,5,10,20],//可以选择每一页显示的数据条数
        jump:function(obj,first){
            
            // obj//包含所有分页的数据
            // first 是否是首次
            // console.log(11111)
            // console.log(obj)
            // console.log(first)
            // console.log('当前页是'+obj.curr)
            // console.log('当前每一页显示'+obj.limit+'条数')
            // console.log('=====')
            q.pagenum = obj.curr;
            q.pagesize = obj.limit;
            //为了避免第一次的时候出现死循环
            // initTable ---> renderPage ---> initTable --> renderPage-->initTable --> renderPage
            if(!first){
                initTable();
            }
            // initTable()
            // console.log(111)
        }
    })
}

function initCate() {
    $.ajax({
        method: 'get',
        url: '/my/article/cates',
        success: function (res) {
            if (res.status != 0) {
                return layer.msg('获取数据失败')
            }
            console.log(res)
            var str = template('cate-tpl', res)
            $('[name=cate_id]').html(str)
            // 对layui插件更新一下数据
            layui.form.render();
        }
    })
}